home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / aal / hash.h < prev    next >
C/C++ Source or Header  |  2006-01-09  |  966b  |  35 lines

  1. /* Copyright (C) 2001, 2002, 2003 by Hans Reiser, licensing governed by
  2.    libaal/COPYING.
  3.    
  4.    hash.h -- hash table implementation. */
  5.  
  6. #ifndef AAL_HASH_H
  7. #define AAL_HASH_H
  8.  
  9. #include <aal/types.h>
  10.  
  11. extern void aal_hash_table_free(aal_hash_table_t *table);
  12.  
  13. extern void *aal_hash_table_lookup(aal_hash_table_t *table,
  14.                    void *key);
  15.  
  16. extern errno_t aal_hash_table_remove(aal_hash_table_t *table,
  17.                      void *key);
  18.  
  19. extern errno_t aal_hash_table_insert(aal_hash_table_t *table,
  20.                      void *key, void *value);
  21.  
  22. extern errno_t aal_hash_table_foreach(aal_hash_table_t *table,
  23.                       foreach_func_t foreach_func,
  24.                       void *data);
  25.  
  26. extern aal_hash_table_t *aal_hash_table_create(uint32_t size,
  27.                            hash_func_t hash_func,
  28.                            comp_func_t comp_func,
  29.                            keyrem_func_t keyrem_func,
  30.                            valrem_func_t valrem_func);
  31.  
  32. extern aal_hash_node_t **aal_hash_table_lookup_node(aal_hash_table_t *table,
  33.                             void *key);
  34. #endif
  35.